/*
 * Player.h
 *
 *  Created on: 23.06.2012
 *      Author: sebastian
 */

#ifndef PLAYER_H_
#define PLAYER_H_

#include <string>
#include "../utils/Namable.h"
#include "World/Planet.h"
#include <list>

class Player: public Namable {
private:
	std::string currenIP_; //low: insert the missing t
	int sessionID_;
	std::string password;

	//gamelogics stuff:
	Planet* startPlanet_;
	int points_;
	std::list<Planet*> planets_;

public:
	/** generates a new Player and its home planet */
	Player(std::string name);

	/** Connects the player to a client after logging in */
	void connectTo(const std::string &IP);
	virtual ~Player();
    std::string getCurrenIP() const;//TODO rechtschreibfehler
    std::string getPassword() const;
    int getPoints() const;
    int getSessionID() const;
    Planet *getStartPlanet() const;
    const std::list<Planet*>& getPlanets() const;

    void setPassword(std::string password);
    void setPoints(int points_);
    void setSessionID(int sessionID_);


};

#endif /* PLAYER_H_ */
